Update to LLVM 23#158734
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
💔 Test for b003a3f failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@bors try |
This comment has been minimized.
This comment has been minimized.
|
💔 Test for 0259978 failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@bors try |
This comment has been minimized.
This comment has been minimized.
|
💔 Test for 4973bfc failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
Update to LLVM 23 try-job: dist-i686-mingw
|
The include-blob regression is due to escape_string_symbol(), where that particular benchmark spends basically all the time. Having trouble creating a reproducer for that though, the LTO/PGO really doesn't make it easy to independently reproduce optimization issues. Maybe it would be easier to just reimplement that function in rustc, the way this currently happens via escape_default() and layers of iterators and formatters is horrible. |
|
Tried that in #159609, it does seem like even a naive implementation is better than using the std iterator with to_string()... |
|
Some changes occurred in coverage tests. cc @Zalathar This PR changes how LLVM is built. Consider updating src/bootstrap/download-ci-llvm-stamp.
cc @bjorn3 Warning If you are changing how CI LLVM is built or linked, make sure to bump cc @jieyouxu |
|
r? @davidtwco rustbot has assigned @davidtwco. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
This comment has been minimized.
This comment has been minimized.
There is a minor change in sorted order due to: llvm/llvm-project@5931034
We probably want to change this to align with Linux, but for now keep the old behavior.
It's a dependency of LLVM now.
We can start matching the codegen introduced by LLVM at [1]. This alone isn't enough to make f128 functional on the platform because libcalls use the LLVM ABI. Current behavior originally introduced in RUST-128388. [1]: llvm/llvm-project@aa47e59
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
r? @cuviper |
View all comments
Changes in this PR (apart from the LLVM update):
LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN=OFF, which restores the previous unversioned naming of the LLVM dylib on Darwin. I expect we'll want to change this for consistency with Linux, but given the amount of trouble Darwin dylibs have caused in the past, I'm not trying to do it in this PR.i686-pc-windows-gnuhost tools compiler-team#1020.Issues: